From: Florian Müllner Date: Tue, 3 Mar 2015 03:37:49 +0000 (+0100) Subject: calendar: Allow keynav to day headers and week numbers X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~1599 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=afc2253e5d886b3b9fe537cdcab8485c7ed534b1;p=gnome-shell.git calendar: Allow keynav to day headers and week numbers While those elements cannot be activated, they still provide useful information to screen readers, so include them in the focus chain. For the same purpose, set a more verbose accessible name, given that it is not bound by the same space constraints as the visible label. https://bugzilla.gnome.org/show_bug.cgi?id=706903 --- diff --git a/js/ui/calendar.js b/js/ui/calendar.js index e325a8dc5..36c368b7c 100644 --- a/js/ui/calendar.js +++ b/js/ui/calendar.js @@ -615,7 +615,9 @@ const Calendar = new Lang.Class({ // and we want, ideally, a single character for e.g. S M T W T F S let customDayAbbrev = _getCalendarDayAbbreviation(iter.getDay()); let label = new St.Label({ style_class: 'calendar-day-base calendar-day-heading', - text: customDayAbbrev }); + text: customDayAbbrev, + can_focus: true }); + label.accessible_name = iter.toLocaleFormat('%A'); let col; if (this.actor.get_text_direction() == Clutter.TextDirection.RTL) col = 6 - (7 + iter.getDay() - this._weekStart) % 7; @@ -800,7 +802,10 @@ const Calendar = new Lang.Class({ if (this._useWeekdate && iter.getDay() == 4) { let label = new St.Label({ text: iter.toLocaleFormat('%V'), - style_class: 'calendar-day-base calendar-week-number'}); + style_class: 'calendar-day-base calendar-week-number', + can_focus: true }); + let weekFormat = Shell.util_translate_time_string(N_("Week %V")); + label.accessible_name = iter.toLocaleFormat(weekFormat); layout.pack(label, rtl ? 7 : 0, row); }